home *** CD-ROM | disk | FTP | other *** search
/ Five Quarters Bundle / Edge: Five Quarters Bundle.iso / gamerunr / technote.qip / MAXMEM.TEC < prev    next >
Encoding:
Text File  |  1995-12-30  |  15.5 KB  |  334 lines

  1.  
  2.                  Maximizing Conventional Memory
  3.  
  4.  Quarterdeck Technical Note #296              Filename: MAXMEM.TEC
  5.  by Michael Bolton                          CompuServe: MAXMEM.TEC
  6.  Last revised:  4/02/95                       Category: QEMM
  7.  
  8.  Subject: Providing the maximum possible amount of conventional
  9.           memory in DOS, DESQview, DESQview/X, and Microsoft
  10.           Windows.
  11.  
  12.  DOS and the programs that run under it are limited, except in
  13.  special circumstances, to the first megabyte of the processor's
  14.  address space. This has consequences for DOS programs, and for
  15.  operating environments such as Quarterdeck's DESQview and
  16.  DESQview/X, and Microsoft Windows.
  17.  
  18.  Documentation for Quarterdeck products contains extensive
  19.  information on memory management, and should be consulted for more
  20.  detailed study. This technical note provides a list of the most
  21.  important quick tips for assuring that you have the maximum amount
  22.  of conventional memory available, whether you are working from
  23.  DOS, DESQview, DESQview/X, or Microsoft Windows.  Note that many
  24.  of the QEMM features suggested below will be enabled for you
  25.  automatically at the time you install QEMM.
  26.  
  27.  1. Use QSETUP
  28.  
  29.  The QSETUP program that comes with QEMM runs under DOS and
  30.  Windows.  Its job is to provide you with an easy-to-use way of
  31.  configuring QEMM's features, which are described below.  QSETUP
  32.  will allow you to configure QEMM, to active the DOS-Up feature
  33.  (including DOS=HIGH), and to enable Stealth D*Space.  At the end
  34.  of the QSETUP process, you will be given an opportunity to run
  35.  OPTIMIZE.
  36.  
  37.  2. Use OPTIMIZE
  38.  
  39.  The OPTIMIZE process uses QEMM's RAM parameter and the LOADHI
  40.  utilities to move as many programs as possible out of the
  41.  conventional memory area and above 640K.  If necessary, OPTIMIZE
  42.  will offer the option to activate QEMM's Stealth parameter
  43.  (detailed below).  You should run OPTIMIZE
  44.  
  45.  - after running QSETUP
  46.  - after changing CONFIG.SYS or AUTOEXEC.BAT
  47.  - after adding or removing hardware from your system
  48.  
  49.  Regardless of the change that you have made, running OPTIMIZE will
  50.  ensure that you get the maximum conventional memory.
  51.  
  52.  2. Use Manifest.
  53.  
  54.  The Manifest program that comes with QEMM provides you with a
  55.  detailed view of the configuration of your PC.  When run under
  56.  DESQview, DESQview/X, or Microsoft Windows, Manifest can tell you
  57.  about the state of the current window.  Manifest also includes
  58.  detailed hints on how to get more conventional memory on your PC;
  59.  check the Hints Overview AND the Hints Detail screen.
  60.  
  61.  3. Use Stealth
  62.  
  63.  Go into Manifest, and inspect the QEMM Overview screen.  If the
  64.  screen does not display "Stealth Type" and "Stealth ROMs" and if
  65.  you have less conventional memory than you would like, run the
  66.  QSETUP.  OPTIMIZE program again. When OPTIMIZE offers to test for
  67.  Stealth compatibility, answer Yes, and if OPTIMIZE finds that
  68.  Stealth is compatible with your system, OPTIMIZE will activate
  69.  StealthROM.  StealthROM is quite robust and compatbile, and
  70.  typically results in 83K of extra High RAM into which DOS programs
  71.  can be loaded. If you are having compatibility problems with
  72.  Stealth, consult your QEMM manual or "QEMM GENERAL
  73.  TROUBLESHOOTING" (STEALTH.TEC).  The time you take in
  74.  troubleshooting a Stealth conflict is well worth the memory gain.
  75.  
  76.  4. Use DOS-Up
  77.  
  78.  QEMM's DOS-Up feature moves parts of DOS, including FILES,
  79.  BUFFERS, LASTDRIVE, the DOS Data Segment (which is a block of
  80.  memory that DOS uses to keep track of its own operation), and the
  81.  command processor (typically COMMAND.COM) high.  The DOS kernel
  82.  itself may also be loaded high (see the next section).  Using
  83.  DOS-Up can result in a saving of 7K-70K of conventional memory. To
  84.  activate DOS-Up, go into QSETUP, choose DOS-Up Options, and enable
  85.  Partial (if you are you a DESQviewor DESQview/X user) or All (if
  86.  you do not use DESQview or DESQview/X). Save your configuration,
  87.  and run OPTIMIZE.
  88.  
  89.  5. Use DOS=HIGH
  90.  
  91.  One of the features that you may activate from QSETUP is the
  92.  DOS=HIGH feature.  This loads the DOS kernel -- about 43K of code
  93.  -- into the first 64K above the 1024K line, thanks to technology
  94.  originally discovered by Quarterdeck in 1986.  If you are a
  95.  DESQview or DESQview/X user, it is typically worthwhile NOT to use
  96.  this feature.  DESQview and DESQview/X use this memory (called the
  97.  High Memory Area, or HMA) more effectively than DOS does.
  98.  Generally, you will receive maximum memory gains if you use
  99.  DOS=HIGH, unless you are using DESQview or DESQview/X. To activate
  100.  DOS=HIGH, go into QSETUP, choose DOS-Up Options, and enable All
  101.  (or choose Partial and ensure that DOS=HIGH is activated.  Save
  102.  your configuration, and run OPTIMIZE.
  103.  
  104.  6. Use ST-DSPC
  105.  
  106.  QEMM 7.0 and later come with a feature for DOS's disk compression
  107.  software (DoubleSpace, and in DOS 6.22, DriveSpace) for which
  108.  Quarterdeck has special support.  The code for the disk
  109.  compression software can be placed into expanded memory, replacing
  110.  a driver tht is typically over 40K with one that is typically
  111.  under 4K.  This generally represent substantial memory savings;
  112.  although DoubleSpace can be loaded high, it still takes memory in
  113.  the first megabyte of adddress space. Stealth D*Space removes most
  114.  of this overhead. If you are using DOS's disk compression,
  115.  activate QEMM's Stealth D*Space feature. To do this, go into
  116.  QSETUP, choose ST*DPACE Options, and choose L for Enable or
  117.  disable Stealth D*Space.  On the next screen, choose Y to enable
  118.  Stealth D*Space.  Save your configuration, and run OPTIMIZE.
  119.  
  120.  7. Use QEMM's Stacker Feature
  121.  
  122.  QEMM comes with a feature that can allow Stacker 4 to put most
  123.  of its code outside of conventional memory.  Stacker's overhead in
  124.  conventional memory or in High RAM to as little as 10K on MS-DOS 6
  125.  systems.  This can save a great deal of memory indeed on Stac'd
  126.  systems whose hard drives have large cluster sizes.
  127.  
  128.  A program is available to enable users of Stacker 4 to enable this
  129.  feature is available to all registered users of Stacker 4, either
  130.  from Stac Electronics or from Quarterdeck, under the filename
  131.  S4UP.EXE.
  132.  
  133.  To get your copy of this file, join the CompuServe forum for
  134.  either Quarterdeck or Stac, by typing GO QUARTERDECK or GO STAC at
  135.  any CompuServe main prompt. Alternatively, using your modem, call
  136.  
  137.  Stac Electronics BBS  (USA)    619 431-5956
  138.  Quarterdeck BBS        UK      01245-496943
  139.                         Ireland 353 1 2844381
  140.  
  141.  Oce you have acquired this file and run the update, you may
  142.  activate the Stacker feature in this way:
  143.  
  144.  1. If you are currently inside Windows, exit it.
  145.  2. At the DOS prompt, change to the Stacker directory.
  146.  3. Type ED /I
  147.  4. Press Enter to insert a new line.
  148.  5. On this new line, type /QD
  149.  6. Press Ctrl-Z to exit the editor, and save your changes.
  150.  7. Restart your system to put the changes into effect.
  151.  
  152.  As usual, since this represents a change to your CONFIG.SYS, use
  153.  the OPTIMIZE program again.
  154.  
  155.  8. Use EMS or XMS
  156.  
  157.  Many programs -- TSRs, device drivers, and applications -- are
  158.  able to use expanded memory (EMS) or extended memory (XMS) reduce
  159.  their DOS overhead.  These features are sometimes automatic, but
  160.  are sometimes enabled via parameters (or command-line switches) or
  161.  initialization files.  Additionally, parameters may exist that
  162.  simply reduce the program's size -- sometimes by disabling
  163.  unneeded features -- without using expanded or extended memory.
  164.  This may require a little research on your part -- such parameters
  165.  are found in the online help or in the documentation for the
  166.  program.  However, this research can reap rich rewards in memory
  167.  savings.  Some programs that run only in conventional memory do
  168.  not have switches to activate EMS or XMS usage, but instead come
  169.  with EMS-using equivalents.  Novell's NETX network shell is an
  170.  example of this; while it uses 43K of conventional memory, and
  171.  does not use EMS, it is typically accompanied by EMSNETX (which
  172.  requires less than 10K of coventional memory) and XMSNETX (which
  173.  takes similar overhead). These programs are functionally
  174.  equivalent to NETX, but save considerable amounts of memory.
  175.  
  176.  Also consult the Quarterdeck Technical Note "Why the EMS Page
  177.  Frame is Important" (FRAME.TEC)
  178.  
  179.  9. Use Vidram
  180.  
  181.  VIDRAM provides up to 96K of extra conventional memory if you are
  182.  using text programs.  VIDRAM does this by borrowing address space
  183.  from the VGA graphics buffer on your video card.  VIDRAM can be
  184.  enabled or disabled on the fly, and can also run in text windows
  185.  within Microsoft Windows.  DESQview/X users in particular can take
  186.  advantage of VIDRAM (see the next section of this note.)  In order
  187.  to activate VIDRAM, simply type
  188.  
  189.  VIDRAM ON
  190.  
  191.  On some video cards, it may be necessary to add the parameter
  192.  VIDRAMEMS (VREMS) to the QEMM386.SYS line in CONFIG.SYS for VIDRAM
  193.  to work properly from the DOS prompt.  This parameter is
  194.  incompatible with Microsoft Windows.  However, even on such cards,
  195.  VIDRAM will work in a Microsoft Windows window without the VREMS
  196.  parameter.
  197.  
  198.  10. Streamline your CONFIG.SYS and AUTOEXEC.BAT
  199.  
  200.  If you are loading many device drivers or TSRs, they will have a
  201.  direct impact on conventional memory.
  202.  
  203.  Programs such as disk caches, RAM drives, or video speedup
  204.  utilities typically consume memory in the first megabyte.  If you
  205.  do not need these drivers, or are unsure of their usefulness, you
  206.  may consider removing them to see the impact on performance.  You
  207.  may find that the benefit of additional memory outweighs the gains
  208.  provided by such utilities.  Arriving at optimal performance will
  209.  require you to decide which features are more important than
  210.  others.
  211.  
  212.  If you are using DESQview, DESQview/X, or Microsoft Windows, TSRs
  213.  or device drivers such as ANSI.SYS, DOSKEY or Sidekick should be
  214.  removed from the AUTOEXEC.BAT and loaded in a window instead. Such
  215.  programs only have a memory impact on the window in which they are
  216.  loaded, but if loaded before your operating environment will
  217.  reduce the size of all of the windows on your system.
  218.  
  219.  11. Consider removing QDPMI
  220.  
  221.  Many modern DOS-Extended programs use the DOS Protected Mode
  222.  Interface (DPMI) in order to get access to extended memory.
  223.  However, the DPMI specification suggests that, in the absence of a
  224.  DPMI host, other strategies such as VCPI or XMS can and should be
  225.  used to get access to extended memory.  This means that the
  226.  Quarterdeck DPMI Host (QDPMI.SYS) may not be necessary on your
  227.  system.  If so, use QSETUP to disable QDPMI, save your
  228.  configuration, and run OPTIMIZE.
  229.  
  230.  12. Use QEMM's Analysis Procedure to Gain High RAM
  231.  
  232.  If you're not using QEMM's StealthROM feature, you may still be
  233.  able to us  e small amounts of address space that are marked as
  234.  reserved by the System ROM, but which are acutally unused.  The
  235.  Analysis procedure is documented in the QEMM manual.  You should
  236.  not need to perform an Analysis if you are using StealthROM, which
  237.  typically gains much more High RAM.
  238.  
  239.  13. On DESQview/X Systems with 8514/A Graphics Adapters, Use VIDRAM
  240.  
  241.  If you have an 8514 hardware-compatible video card and DESQview/X,
  242.  you can use VIDRAM without disabling graphics!  This is because
  243.  8514/A graphics adapters do not use the address space that VGA
  244.  adapters do, and because DESQview/X specifically supports the 8514
  245.  adapter.  This can create DESQview/X windows that can provide
  246.  64K-96K of conventional memory.  Note that if your 8514 card
  247.  requires a driver then it is not likely to be hardware compatible
  248.  and that this hint may not be successful.
  249.  
  250.  First, add the VREMS to the QEMM386.SYS line in the CONFIG.SYS
  251.  file.
  252.  
  253.  DEVICE=C:\QEMM\QEMM386.SYS RAM VREMS
  254.  
  255.  Then, type the following line before you enter DESQview/X.  You
  256.  may choose to add this line to your AUTOEXEC.BAT file, or to any
  257.  batch file that starts DESQview/X:
  258.  
  259.  C:\QEMM\VIDRAM ON
  260.  
  261.  This line will activate VIDRAM and extend conventional memory.
  262.  When you start DESQview/X, it may report "GRFVGA.DVR does not find
  263.  the correct video adapter".  You may safely ignore this message;
  264.  DESQview/X will function properly.
  265.  
  266.  14. Reduce the overhead of your operating environment.
  267.  
  268.  DESQview and DESQview/X's Setup programs contain some settings
  269.  that may allow you to squeeze an extra few K of memory out of a
  270.  heavily loaded system, at the potential cost of some speed or
  271.  performance.
  272.  
  273.  "Common Memory" is memory used by DESQview and DESQview/X to
  274.  manage its windows, and the amount you need is usually
  275.  proportionate to the number of windows you open, and the amount of
  276.  text you intend to transfer with DESQview's Mark and Transfer
  277.  feature.  The default (and minimum) value under current versions
  278.  of DESQview is 20K, and should permit the transfer of several
  279.  screen's worth of data and several windows open simultaneously; if
  280.  your common memory setting is higher than this, you may wish to
  281.  reduce it.  Under DESQview/X, the default value is 32K; this may
  282.  be reduced by a few K to eke out an equivalent amount of window
  283.  memory.
  284.  
  285.  "DOS Buffers for EMS" (under DESQview) or "DOS I/O Buffer" is
  286.  memory used by DESQview to manage file operations into expanded
  287.  memory.  The default value is 2K under DESQview, and 8K under
  288.  DESQview/X.  Users of QEMM who are not on a network can set this
  289.  figure to 0K with no loss of performance.  The value of this field
  290.  can affect the speed of disk access; however, it is rarely
  291.  worthwhile to choose a value higher than 10K or 15K.
  292.  
  293.  If you wish to throw away a few DESQview features, you can
  294.  probably scrimp a few more K from the Setup program.
  295.  
  296.  On the Keyboard option, you can save as much as 12K if you tell
  297.  DESQview that you don't wish to use the Learn feature.  This will
  298.  disable DESQview's very useful macro system.
  299.  
  300.  On the Video Monitor option, you can save anywhere from 0K to 16K
  301.  if you tell DESQview that you don't wish to display text and
  302.  graphics at the same time. This will disable DESQview's Video
  303.  Options menu, prevent graphics programs from being seen when they
  304.  are in background, and prevent virtualization of graphics. You can
  305.  save another 2-9K by choosing 0 for "What Display Adapter do you
  306.  have?".  This causes DESQview not to load a video driver.  This
  307.  will keep DESQview from saving and restoring graphics screens or
  308.  virtualizing graphics.
  309.  
  310.  On the Performance option, you can save 2K by setting the "Manage
  311.  Printer Contention?" field to its default value of N. This means
  312.  that DESQview will not intervene to prevent two programs from
  313.  printing at the same time.
  314.  
  315.  On the Network option, you may disable the network support, or
  316.  decrease the size of the buffer.  This support is needed only for
  317.  certain network-specific program, and not for most normal DOS
  318.  applications that are merely run off the network.
  319.  
  320.  The amount of memory you will save will be about 5K plus the size
  321.  of the buffer reserved in the second field.  Unless you know that
  322.  you need this service, you should try running without it and
  323.  seeing if you have problems without it that you do not have with
  324.  it.  You may also try decreasing the size of the buffer.  The
  325.  default is 8K.
  326.  
  327.  ******************************************************************
  328.  *      Trademarks are property of their respective owners.       *
  329.  *   This and other technical notes may be available in updated   *
  330.  *     forms through Quarterdeck's standard support channels.     *
  331.  *          Copyright (C) 1995 Quarterdeck Corporation            *
  332.  ******************** E N D   O F   F I L E ***********************
  333.  
  334.